Services generally use standardized interfaces for exchanging data from one computer to another over a computer network, for example the Internet. An application may request data from a server over the computer network using a service provided by the server. Such a request is typically enclosed in a SOAP envelope, which is conveyed using HTTP, and may comprise XML in conjunction with other web-related standards. More technically advanced applications combine various services to obtain or process the desired data. A software architecture, which is developed around a plurality of services, e.g. web services on the Internet, is called a service oriented architecture (SOA).
In a SOA, resources are made available to participants in the network as independent services that the participants can access in a standardized way. Whereas most definitions of a SOA use SOAP requests conveyed via HTTP/HTTPS over TCP/IP, a SOA may use any web service-based technology. The web services interoperate based on formal definitions which are independent from the underlying platform and programming language. The interface definition encapsulates the specific implementations. A SOA is independent of a specific development technology (such as Java and .NET). The software components become very reusable because the interface is standards-compliant and is independent from the underlying implementation of the web service logic. For example, a C# (C Sharp) service could be used by a JAVA application and vice versa.
In a SOA, the registry plays a central role in managing the information about the SOA entities as well as other metadata such as policies (e.g. rules concerning the conditions of use or the performance of web services) associations between the SOA entities etc. This applies not only to an operating SOA but also to other phases of the lifecycle of the SOA. Thus, the information maintained in one or more registries will go through a lifecycle that may for example be oriented along the classical development cycle of software (inception, design, implementation, test, production etc.). However, what parts of the SOA are affected by changing from one phase of a lifecycle to the next will strongly depend on the processes established in the organization implementing its SOA. SOA architectures and their elements as they are disclosed in the prior art, do not provide the possibility for a customized lifecycle management but provide at best “one fits all” approaches for managing the lifecycle of the entities of the SOA, wherein a status indication is provided for each web service, which may reflect, whether a certain web service is operational or still tested.
Thus, lifecycle management of an SOA is desired.